package com.fowo.api.model.amazon.order.list.product;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fowo.api.common.validator.*;
import io.swagger.v3.oas.annotations.media.Schema;
import javax.validation.constraints.*;
import lombok.Data;

/**
 * 亚马逊订单列表子表 预览导入辅助模型(全字段为文本类型)
 * @author yl_ls
 */
@Data
public class AmazonOrderListProductImportPo {

  /** ASIN */
  @ExcelProperty("ASIN")
  @Size(max = 50, message = "ASIN长度不能超过50")
  private String asin;

  /** 产品 */
  @ExcelProperty("产品")
  @Size(max = 500, message = "产品长度不能超过500")
  private String productIdName;

  @ExcelIgnore
  @Schema(title = "产品")
  private String productId;

  /** 品名 */
  @ExcelProperty("品名")
  @Size(max = 500, message = "品名长度不能超过500")
  private String productName;

  /** SKU */
  @ExcelProperty("SKU")
  @Size(max = 50, message = "SKU长度不能超过50")
  private String sku;

  /** 数量 */
  @ExcelProperty("数量")
  @Size(max = 50, message = "数量长度不能超过50")
  private String quantityOrdered;

  /** MSKU */
  @ExcelProperty("MSKU")
  @Size(max = 50, message = "MSKU长度不能超过50")
  private String msku;

  /** 所属亚马逊订单 */
  @ExcelProperty("所属亚马逊订单")
  @Size(max = 50, message = "所属亚马逊订单长度不能超过50")
  private String parentAmazonOrderListAmazonOrderId;

  @ExcelIgnore
  @Schema(title = "所属亚马逊订单")
  private String parentAmazonOrderList;

  /** 商品标题 */
  @ExcelProperty("商品标题")
  @Size(max = 50, message = "商品标题长度不能超过50")
  private String title;

  /** 已配送 */
  @ExcelProperty("已配送")
  @IntegerString(message = "已配送数值格式不正确", label = "已配送", min = 0)
  private String quantityShipped;

  /** 销售收益 */
  @ExcelProperty("销售收益")
  @DecimalString(message = "销售收益小数格式不正确", label = "销售收益")
  private String salesPriceAmount;

  /** 单价 */
  @ExcelProperty("单价")
  @DecimalString(message = "单价小数格式不正确", label = "单价")
  private String unitPriceAmount;

  /** 税费 */
  @ExcelProperty("税费")
  @DecimalString(message = "税费小数格式不正确", label = "税费")
  private String taxAmount;

  /** 采购成本 */
  @ExcelProperty("采购成本")
  @DecimalString(message = "采购成本小数格式不正确", label = "采购成本")
  private String cgPrice;

  /** 毛利润 */
  @ExcelProperty("毛利润")
  @DecimalString(message = "毛利润小数格式不正确", label = "毛利润")
  private String profit;
}
